草庐IT

OpenSSL 证书

全部标签

c++ - OpenSSl RAND_bytes 多久返回一次错误,因为缺乏不可预测性?

RAND_bytes的文档声称如果生成的随机字节是可预测的,该函数可能会返回错误。我的问题是此类错误有多频繁?可以在有限循环(比如5次尝试)中调用RAND_bytes然后抛出异常是解决此问题的合理方法,或多或少像这样:unsignedcharrandom_bytes[4];uint8_tattempts=0;while(RAND_bytes(random_bytes,sizeof(random_bytes))!=1&&++attempts!=5){}if(attempts==5){throwstd::runtime_error("randombytestoopredictableaft

c++ - OpenSSL:AES CCM 256 位大文件加密 block :这可能吗?

我正在执行一项使用AESCCM模式(256位key长度)加密大文件的任务。其他用于加密的参数是:标签大小:8字节iv大小:12字节因为我们已经在使用OpenSSL1.0.1c,所以我也想用它来完成这项任务。文件的大小事先并不知道,它们可能非常大。这就是为什么我想按block读取它们并使用EVP_EncryptUpdate单独加密每个block,直到文件大小。不幸的是,仅当整个文件一次加密时,加密对我有效。如果我尝试多次调用它,我会从EVP_EncryptUpdate或奇怪的崩溃中得到错误。我使用gcc4.7.2在Windows7和UbuntuLinux上测试了加密。我找不到有关Open

c++ - Boost 1_65_1 不使用 OpenSSL 1.1.0g "undefined reference"编译,但使用 "nm"找到

我正在尝试让SSL与boostASIO一起工作。我在Windows上使用MingW6.3。我用MingW构建了OpenSSL1.1、1.0和0.8,当我尝试将它们链接到项目时,我总是会遇到不同的错误(取决于缺少什么)。现在我正在尝试使OpenSSL1.1.0g工作,但即使我使用CMAKE手动提供库的路径,我也会遇到这些错误:如果我使用OpenSSL1.1.0g构建我的项目,这是错误:"C:\ProgramFiles\JetBrains\CLion2017.2.3\bin\cmake\bin\cmake.exe"--buildC:\Users\myuser\Documents\Mages

c++ - openssl 内存泄漏 : me or bug?

尝试使用openssl(1.0.2p)解析来自证书的信息,无法使其无泄漏。代码:std::ifstreamfst("2048b-rsa-example-cert.der",std::ios::binary);std::vectorcertificate((std::istreambuf_iterator(fst)),std::istreambuf_iterator());conststd::uint8_t*data=certificate.data();X509*info=d2i_X509(nullptr,&data,certificate.size());X509_free(info

openssl3.2/test/certs - 027 - server intermediate ca: sca-cert

文章目录openssl3.2/test/certs-027-serverintermediateca:sca-cert概述笔记ENDopenssl3.2/test/certs-027-serverintermediateca:sca-cert概述openssl3.2-官方demo学习-test-certs笔记//\filemy_openssl_linux_log_doc_027.txt//\noteopenssl3.2/test/certs-027-serverintermediateca:sca-cert//------------------------------------------

阿里云服务器 使用Certbot申请免费 HTTPS 证书及自动续期

前言Certbot是一款免费且开源的自动化安全证书管理工具,由电子前沿基金会(EFF)开发和维护,是在Linux、Apache和Nginx服务器上配置和管理SSL/TLS证书的一种机制。Certbot可以自动完成域名的认证并安装证书。一、安装软件1.1安装Certbotyuminstallepel-release-yyuminstallcertbot-y如果提示需要重新安装python-urllib3此时需要将原来的Python文件备份,或者删除,这里使用了备份mv/usr/lib/python2.7/site-packages/urllib3/packages/ssl_match_hostn

c++ - 用于 DHE 交换的 OpenSSL 证书生成

我是安全和OpenSSL方面的初学者。我的目标是以编程方式生成一个证书,该证书通过Chrome所做的“过时​​的”羞辱。我用来生成的证书使用了AES_128_GCM和RSA,即使我尝试将密码列表设置为kEECDH:kEDH:!ADH:AES256-SHA256并且服务器上下文使用SSL_CTX_new(TLSv1_2_server_method());。基于thedocumentation中的示例我尝试了以下操作:X509*x=NULL;EVP_PKEY*pk=NULL;EVP_PKEY_CTX*ctx=NULL;EVP_PKEY*params=NULL;if(NULL==(param

Java安全——密钥和证书

Java安全密钥和证书Java安全方面涉及的密钥(Key)和证书(Certificate)是保护数据的关键部分。密钥是用于加密和解密数据的一组数据,而证书是用于数字身份验证的一种数字凭证。密钥密钥是用于加密和解密数据的一组数据。密钥可以是对称密钥也可以是非对称密钥。对称密钥是一种使用同一个密钥进行加解密的加密方法。对称密钥的加解密速度较快,但存在一个缺点,即发送方和接收方必须拥有相同的密钥才能进行通信,这对于密钥交换和公共密钥的保护会产生一定的风险。非对称密钥是一种使用一组密钥进行加解密的加密方法。一组非对称密钥包括一个公钥和一个私钥,其中公钥可以公开,但私钥不能泄漏。发送方使用接收方的公钥进

Certificate 超详细解析cer证书(序列号,颁发者,公钥等)

我们一般说的证书就是数字证书:数字证书是指在互联网通讯中标志通讯各方身份信息的一个数字认证,人们可以在网上用它来识别对方的身份一般有两种:PFX证书、CER证书PFX证书:由PublicKeyCryptographyStandards#12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形式,以pfx作为证书文件后缀名。一般RSA证书比较多,现在国内的RSA根证到期,有些企业已经不用了。SM2证书:1.二进制编码的证书证书中没有私钥,DER编码二进制格式的证书文件,以cer作为证书文件后缀名。2.Base64编码的证书证书中没有私钥,BASE64编码格式的证书文件,也是以cer作为

c++ - 如何使用 OpenSSL API 从其 PEM 格式字符串中读取 RSA 公钥?

我可以使用PEM_read_RSA_PUBKEY函数轻松读取PEM文件。但是,我有一个已内置到可执行文件中的公钥,我不想制作临时文件。阅读此示例/教程:http://hayageek.com/rsa-encryption-decryption-openssl-c/我想出了以下解决方案:#include#include#include#include#include#include#include#includeRSA*createRSA(constchar*key){RSA*rsa=nullptr;BIO*keybio;keybio=BIO_new_mem_buf(key,-1);//